

def scan(node, env, libpath=()):
    '\n    This scanner scans program files for static-library\n    dependencies.  It will search the LIBPATH environment variable\n    for libraries specified in the LIBS variable, returning any\n    files it finds as dependencies.\n    '
    try:
        libs = env['LIBS']
    except KeyError:
        return []
    if SCons.Util.is_String(libs):
        libs = libs.split()
    else:
        libs = SCons.Util.flatten(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):
            lib = env.subst(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

dataset/ETHPy150Open kayhayen/Nuitka/nuitka/build/inline_copy/lib/scons-2.3.2/SCons/Scanner/Prog.py scan/original