def shallow(libs, iface):
    tf = tempfile.NamedTemporaryFile(suffix=".iface", delete=False)
    tf.close()
    if not (iface is None):
        interface.writeInterface(iface, tf.name)
    else:
        iface = interface.emptyInterface()

    for l in libs:
        passes.interface(l, tf.name, [tf.name], quiet=True)
        x = interface.parseInterface(tf.name)
        interface.joinInterfaces(iface, x)

    tf.unlink(tf.name)
    return iface
def parse(fn):
    if fn == "@main":
        return interface.mainInterface()
    else:
        print fn
        return interface.parseInterface(fn)