summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--SConstruct19
-rwxr-xr-xsrc/arch/isa_parser.py5
-rw-r--r--src/arch/micro_asm.py4
-rw-r--r--src/mem/protocol/SConscript1
4 files changed, 12 insertions, 17 deletions
diff --git a/SConstruct b/SConstruct
index e34d60ec8..f143bca0e 100644
--- a/SConstruct
+++ b/SConstruct
@@ -111,8 +111,12 @@ from os.path import join as joinpath, split as splitpath
import SCons
import SCons.Node
-# M5 includes
-sys.path[1:1] = [ Dir('src/python').srcnode().abspath ]
+extra_python_paths = [
+ Dir('src/python').srcnode().abspath, # M5 includes
+ Dir('ext/ply').srcnode().abspath, # ply is used by several files
+ ]
+
+sys.path[1:1] = extra_python_paths
from m5.util import compareVersions, readCommand
@@ -122,7 +126,7 @@ from m5.util import compareVersions, readCommand
#
########################################################################
use_vars = set([ 'AS', 'AR', 'CC', 'CXX', 'HOME', 'LD_LIBRARY_PATH', 'PATH',
- 'RANLIB' ])
+ 'PYTHONPATH', 'RANLIB' ])
use_env = {}
for key,val in os.environ.iteritems():
@@ -133,6 +137,10 @@ main = Environment(ENV=use_env)
main.root = Dir(".") # The current directory (where this file lives).
main.srcdir = Dir("src") # The source directory
+# add useful python code PYTHONPATH so it can be used by subprocesses
+# as well
+main.AppendENVPath('PYTHONPATH', extra_python_paths)
+
########################################################################
#
# Mercurial Stuff.
@@ -338,9 +346,6 @@ Export('extras_dir_list')
# the ext directory should be on the #includes path
main.Append(CPPPATH=[Dir('ext')])
-# M5_PLY is used by isa_parser.py to find the PLY package.
-main.Append(ENV = { 'M5_PLY' : Dir('ext/ply').abspath })
-
CXX_version = readCommand([main['CXX'],'--version'], exception=False)
CXX_V = readCommand([main['CXX'],'-V'], exception=False)
@@ -386,7 +391,7 @@ if main['BATCH']:
if sys.platform == 'cygwin':
# cygwin has some header file issues...
- main.Append(CCFLAGS=Split("-Wno-uninitialized"))
+ main.Append(CCFLAGS="-Wno-uninitialized")
# Check for SWIG
if not main.has_key('SWIG'):
diff --git a/src/arch/isa_parser.py b/src/arch/isa_parser.py
index d5b5bbe4f..23260ca48 100755
--- a/src/arch/isa_parser.py
+++ b/src/arch/isa_parser.py
@@ -34,11 +34,6 @@ import traceback
# get type names
from types import *
-# Prepend the directory where the PLY lex & yacc modules are found
-# to the search path. Assumes we're compiling in a subdirectory
-# of 'build' in the current tree.
-sys.path[0:0] = [os.environ['M5_PLY']]
-
from ply import lex
from ply import yacc
diff --git a/src/arch/micro_asm.py b/src/arch/micro_asm.py
index 3433a8076..4e5400cef 100644
--- a/src/arch/micro_asm.py
+++ b/src/arch/micro_asm.py
@@ -34,10 +34,6 @@ import traceback
# get type names
from types import *
-# Prepend the directory where the PLY lex & yacc modules are found
-# to the search path.
-sys.path[0:0] = [os.environ['M5_PLY']]
-
from ply import lex
from ply import yacc
diff --git a/src/mem/protocol/SConscript b/src/mem/protocol/SConscript
index 293346f13..700ab40ea 100644
--- a/src/mem/protocol/SConscript
+++ b/src/mem/protocol/SConscript
@@ -73,7 +73,6 @@ protocol = env['PROTOCOL']
sources = [ protocol_dir.File("RubySlicc_interfaces.slicc"),
protocol_dir.File("%s.slicc" % protocol) ]
-sys.path[0:0] = [env['ENV']['M5_PLY']]
execfile(slicc_dir.File('parser/parser.py').srcnode().abspath)
sm_files = read_slicc([s.srcnode().abspath for s in sources])