parameters: (node, env, libpath = ())
return_statement: return result
docstring: This scanner scans program files for static-library
      dependencies.  It will search the LIBPATH environment variable
      for libraries specified in the LIBS variable, returning any
      files it finds as dependencies.
docstring_summary: This scanner scans program files for static-library
      dependencies.  It will search the LIBPATH environment variable
      for libraries specified in the LIBS variable, returning any
      files it finds as dependencies.
docstring_tokens: This scanner scans program files for static - library dependencies . It will search the LIBPATH environment variable for libraries specified in the LIBS variable returning any files it finds as dependencies .
function: def scan(node, env, libpath = ()):
      """
      This scanner scans program files for static-library
      dependencies.  It will search the LIBPATH environment variable
      for libraries specified in the LIBS variable, returning any
      files it finds as dependencies.
      """
      try:
          libs = env['LIBS']
      except KeyError:
          # There are no LIBS in this environment, so just return a null list:
          return []
  
      libs = _subst_libs(env, libs)
  
      try:
          prefix = env['LIBPREFIXES']
          if not SCons.Util.is_List(prefix):
              prefix = [ prefix ]
      except KeyError:
          prefix = [ '' ]
  
      try:
          suffix = env['LIBSUFFIXES']
          if not SCons.Util.is_List(suffix):
              suffix = [ suffix ]
      except KeyError:
          suffix = [ '' ]
  
      pairs = []
      for suf in map(env.subst, suffix):
          for pref in map(env.subst, prefix):
              pairs.append((pref, suf))
  
      result = []
  
      if callable(libpath):
          libpath = libpath()
  
      find_file = SCons.Node.FS.find_file
      adjustixes = SCons.Util.adjustixes
      for lib in libs:
          if SCons.Util.is_String(lib):
              for pref, suf in pairs:
                  l = adjustixes(lib, pref, suf)
                  l = find_file(l, libpath, verbose=print_find_libs)
                  if l:
                      result.append(l)
          else:
              result.append(lib)
  
      return result
function_tokens: def scan ( node , env , libpath = ( ) ) : try : libs = env [ 'LIBS' ] except KeyError : # There are no LIBS in this environment, so just return a null list: return [ ] libs = _subst_libs ( env , libs ) try : prefix = env [ 'LIBPREFIXES' ] if not SCons . Util . is_List ( prefix ) : prefix = [ prefix ] except KeyError : prefix = [ '' ] try : suffix = env [ 'LIBSUFFIXES' ] if not SCons . Util . is_List ( suffix ) : suffix = [ suffix ] except KeyError : suffix = [ '' ] pairs = [ ] for suf in map ( env . subst , suffix ) : for pref in map ( env . subst , prefix ) : pairs . append ( ( pref , suf ) ) result = [ ] if callable ( libpath ) : libpath = libpath ( ) find_file = SCons . Node . FS . find_file adjustixes = SCons . Util . adjustixes for lib in libs : if SCons . Util . is_String ( lib ) : for pref , suf in pairs : l = adjustixes ( lib , pref , suf ) l = find_file ( l , libpath , verbose = print_find_libs ) if l : result . append ( l ) else : result . append ( lib ) return result