create_build.py

来自「Boost provides free peer-reviewed portab」· Python 代码 · 共 56 行

PY
56
字号
# Copyright Bruno da Silva de Oliveira 2006. Distributed under the Boost# Software License, Version 1.0. (See accompanying# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)import osimport sysimport shutilimport fnmatchfrom zipfile import ZipFile, ZIP_DEFLATEDdef findfiles(directory, mask):    def visit(files, dir, names):        for name in names:            if fnmatch.fnmatch(name, mask):                files.append(os.path.join(dir, name))    files = []    os.path.walk(directory, visit, files)    return files                        def main():    # test if PyXML is installed    try:        import _xmlplus.parsers.expat        pyxml = '--includes _xmlplus.parsers.expat'    except ImportError:        pyxml = ''    # create exe    status = os.system('python setup.py py2exe %s >& build.log' % pyxml)    if status != 0:        raise RuntimeError, 'Error creating EXE'    # create distribution    import pyste    version = pyste.__VERSION__    zip = ZipFile('pyste-%s.zip' % version, 'w', ZIP_DEFLATED)        # include the base files    dist_dir = 'dist/pyste'    for basefile in os.listdir(dist_dir):        zip.write(os.path.join(dist_dir, basefile), os.path.join('pyste', basefile))    # include documentation    for doc_file in findfiles('../doc', '*.*'):        dest_name = os.path.join('pyste/doc', doc_file[3:])        zip.write(doc_file, dest_name)    zip.write('../index.html', 'pyste/doc/index.html')    zip.close()    # cleanup    os.remove('build.log')    shutil.rmtree('build')    shutil.rmtree('dist')    if __name__ == '__main__':    sys.path.append('../src')    main()

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?