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:
Nathan Binkert 2005-03-11 18:28:38 -05:00
parent aa8c9db159
commit cf05fa476d
30 changed files with 22 additions and 16 deletions

View file

@ -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

View file

@ -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
View file

@ -0,0 +1,7 @@
from mpy_importer import *
from config import *
from objects import *
cpp_classes = MetaSimObject.cpp_classes
cpp_classes.sort()

View file

@ -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()

View file

@ -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;

View file

@ -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)