From: Giuseppe Bilotta Date: Wed, 25 May 2016 13:32:08 +0000 (-0600) Subject: scons: support 2.5.0 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1b62b47f6fcaf5a825a5a909c91e802bffae3b1d;p=mesa.git scons: support 2.5.0 The get_implicit_deps changed in SCons 2.5, expecting a callable rather than a path as third argument. Detect the SCons versions and set the argument appropriately to support both 2.5 and earlier versions. This closes #95211. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95211 Signed-off-by: Giuseppe Bilotta Cc: mesa-stable@lists.freedesktop.org Acked-by: Emil Velikov Reviewed-by: Brian Paul --- diff --git a/scons/custom.py b/scons/custom.py index ff7a7a935de..e66f4969623 100644 --- a/scons/custom.py +++ b/scons/custom.py @@ -43,6 +43,13 @@ import fixes import source_list +# the get_implicit_deps() method changed between 2.4 and 2.5: now it expects +# a callable that takes a scanner as argument and returns a path, rather than +# a path directly. We want to support both, so we need to detect the SCons version, +# for which no API is provided by SCons 8-P + +scons_version = tuple(map(int, SCons.__version__.split('.'))) + def quietCommandLines(env): # Quiet command lines # See also http://www.scons.org/wiki/HidingCommandLinesInOutput @@ -129,7 +136,7 @@ def code_generate(env, script, target, source, command): # Explicitly mark that the generated code depends on the generator, # and on implicitly imported python modules - path = (script_src.get_dir(),) + path = (script_src.get_dir(),) if scons_version < (2, 5, 0) else lambda x: script_src deps = [script_src] deps += script_src.get_implicit_deps(env, python_scanner, path) env.Depends(code, deps)