1061da546Spatrickimport os 2061da546Spatrickimport sys 3061da546Spatrick 4061da546SpatrickpkgRelDir = sys.argv[1] 5061da546SpatrickpkgFiles = sys.argv[2:] 6061da546Spatrick 7061da546SpatrickgetFileName = lambda f: os.path.splitext(os.path.basename(f))[0] 8061da546SpatrickimportNames = ', '.join('"{}"'.format(getFileName(f)) for f in pkgFiles) 9061da546Spatrick 10061da546Spatrickscript = """__all__ = [{import_names}] 11061da546Spatrickfor x in __all__: 12061da546Spatrick __import__('lldb.{pkg_name}.' + x) 13*f6aab3d8Srobert 14*f6aab3d8Srobertdef __lldb_init_module(debugger, internal_dict): 15*f6aab3d8Srobert import lldb 16*f6aab3d8Srobert for x in __all__: 17*f6aab3d8Srobert submodule = getattr(lldb.{pkg_name}, x) 18*f6aab3d8Srobert lldb_init = getattr(submodule, '__lldb_init_module', None) 19*f6aab3d8Srobert if lldb_init: 20*f6aab3d8Srobert lldb_init(debugger, internal_dict) 21061da546Spatrick""".format(import_names=importNames, pkg_name=pkgRelDir.replace("/", ".")) 22061da546Spatrick 23061da546SpatrickpkgIniFile = os.path.normpath(os.path.join(pkgRelDir, "__init__.py")) 24061da546Spatrickwith open(pkgIniFile, "w") as f: 25061da546Spatrick f.write(script) 26