示例#1
0
文件: build.py 项目: dagss/Bento
class SectionWriter(object):
    def __init__(self):
        callbacks = [
            ("pythonfiles", None),
            ("bentofiles", build_bento_files),
            ("datafiles", build_data_files),
            ("compiled_libraries", build_distutils.build_compiled_libraries),
            ("extensions", build_distutils.build_extensions),
            ("executables", build_executables)]
        self.sections_callbacks = OrderedDict(callbacks)
        self.sections = {}
        for k in self.sections_callbacks:
            self.sections[k] = {}

    def update_sections(self, pkg):
        for name, updater in self.sections_callbacks.iteritems():
            self.sections[name].update(updater(pkg))

    def store(self, filename, pkg):
        s = get_configured_state()
        scheme = dict([(k, s.paths[k]) for k in s.paths])

        meta = ipkg_meta_from_pkg(pkg)
        p = InstalledPkgDescription(self.sections, meta, scheme,
                                    pkg.executables)
        p.write(filename)
示例#2
0
文件: build.py 项目: dagss/Bento
 def __init__(self):
     callbacks = [
         ("pythonfiles", None),
         ("bentofiles", build_bento_files),
         ("datafiles", build_data_files),
         ("compiled_libraries", build_distutils.build_compiled_libraries),
         ("extensions", build_distutils.build_extensions),
         ("executables", build_executables)]
     self.sections_callbacks = OrderedDict(callbacks)
     self.sections = {}
     for k in self.sections_callbacks:
         self.sections[k] = {}