scons: add py3 support
SCons 3.1 has moved to python 3, requiring this fix to continue supporting scons builds. Closes: #944 Cc: mesa-stable@lists.freedesktop.org Acked-by: Eric Engestrom <eric@engestrom.ch> Tested-by: Eric Engestrom <eric@engestrom.ch>
This commit is contained in:

committed by
Eric Engestrom

parent
411e50a8fd
commit
3f92d17894
@@ -128,9 +128,9 @@ def generate(env):
|
||||
if not path:
|
||||
path = []
|
||||
if SCons.Util.is_String(path):
|
||||
path = string.split(path, os.pathsep)
|
||||
path = str.split(path, os.pathsep)
|
||||
|
||||
env['ENV']['PATH'] = string.join([dir] + path, os.pathsep)
|
||||
env['ENV']['PATH'] = str.join(os.pathsep, [dir] + path)
|
||||
|
||||
# Most of mingw is the same as gcc and friends...
|
||||
gnu_tools = ['gcc', 'g++', 'gnulink', 'ar', 'gas']
|
||||
|
@@ -262,6 +262,10 @@ def parse_source_list(env, filename, names=None):
|
||||
sym_table = parser.parse(src.abspath)
|
||||
|
||||
if names:
|
||||
if sys.version_info[0] >= 3:
|
||||
if isinstance(names, str):
|
||||
names = [names]
|
||||
else:
|
||||
if isinstance(names, basestring):
|
||||
names = [names]
|
||||
|
||||
|
@@ -132,7 +132,7 @@ def check_cc(env, cc, expr, cpp_opt = '-E'):
|
||||
sys.stdout.write('Checking for %s ... ' % cc)
|
||||
|
||||
source = tempfile.NamedTemporaryFile(suffix='.c', delete=False)
|
||||
source.write('#if !(%s)\n#error\n#endif\n' % expr)
|
||||
source.write(('#if !(%s)\n#error\n#endif\n' % expr).encode())
|
||||
source.close()
|
||||
|
||||
# sys.stderr.write('%r %s %s\n' % (env['CC'], cpp_opt, source.name));
|
||||
|
Reference in New Issue
Block a user