stick all python stuff into a top level python directory.
create an m5 package in python/m5 move the objects package into the m5 package move the m5config into the m5 package as config leave both importers outside of the package. SConscript: sim/main.cc: move sim/pyconfig/* -> python python/SConscript: m5config.py -> m5/config.py (now automatically embedded) objects -> python/m5/objects embed all python files in python/m5 python/m5/config.py: importer renamed mpy_importer move code to m5/__init__.py test/genini.py: deal with new python organization keep track of paths we want to add and add them after parameters are parsed. --HG-- rename : sim/pyconfig/SConscript => python/SConscript rename : sim/pyconfig/m5config.py => python/m5/config.py rename : objects/AlphaConsole.mpy => python/m5/objects/AlphaConsole.mpy rename : objects/AlphaTLB.mpy => python/m5/objects/AlphaTLB.mpy rename : objects/BadDevice.mpy => python/m5/objects/BadDevice.mpy rename : objects/BaseCPU.mpy => python/m5/objects/BaseCPU.mpy rename : objects/BaseCache.mpy => python/m5/objects/BaseCache.mpy rename : objects/BaseSystem.mpy => python/m5/objects/BaseSystem.mpy rename : objects/Bus.mpy => python/m5/objects/Bus.mpy rename : objects/CoherenceProtocol.mpy => python/m5/objects/CoherenceProtocol.mpy rename : objects/Device.mpy => python/m5/objects/Device.mpy rename : objects/DiskImage.mpy => python/m5/objects/DiskImage.mpy rename : objects/Ethernet.mpy => python/m5/objects/Ethernet.mpy rename : objects/Ide.mpy => python/m5/objects/Ide.mpy rename : objects/IntrControl.mpy => python/m5/objects/IntrControl.mpy rename : objects/MemTest.mpy => python/m5/objects/MemTest.mpy rename : objects/Pci.mpy => python/m5/objects/Pci.mpy rename : objects/PhysicalMemory.mpy => python/m5/objects/PhysicalMemory.mpy rename : objects/Platform.mpy => python/m5/objects/Platform.mpy rename : objects/Process.mpy => python/m5/objects/Process.mpy rename : objects/Repl.mpy => python/m5/objects/Repl.mpy rename : objects/Root.mpy => python/m5/objects/Root.mpy rename : objects/SimConsole.mpy => python/m5/objects/SimConsole.mpy rename : objects/SimpleDisk.mpy => python/m5/objects/SimpleDisk.mpy rename : objects/Tsunami.mpy => python/m5/objects/Tsunami.mpy rename : objects/Uart.mpy => python/m5/objects/Uart.mpy extra : convert_revision : aebf6ccda33028b1125974ca8b6aeab6f7570f30
This commit is contained in:
parent
aa8c9db159
commit
cf05fa476d
30 changed files with 22 additions and 16 deletions
|
@ -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
|
||||
|
|
|
@ -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':
|
7
python/m5/__init__.py
Normal file
7
python/m5/__init__.py
Normal file
|
@ -0,0 +1,7 @@
|
|||
from mpy_importer import *
|
||||
from config import *
|
||||
from objects import *
|
||||
|
||||
cpp_classes = MetaSimObject.cpp_classes
|
||||
cpp_classes.sort()
|
||||
|
|
@ -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:
|
||||
|
@ -1298,6 +1298,3 @@ class SimObject(ConfigNode):
|
|||
type = 'SimObject'
|
||||
|
||||
from objects import *
|
||||
|
||||
cpp_classes = MetaSimObject.cpp_classes
|
||||
cpp_classes.sort()
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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)
|
||||
|
|
Loading…
Reference in a new issue