⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 build-win-installer.py

📁 linux下开源浏览器WebKit的源码,市面上的很多商用浏览器都是移植自WebKit
💻 PY
字号:
#!/usr/bin/python# Copyright (C) 2008 Kevin Ollivier  All rights reserved.## Redistribution and use in source and binary forms, with or without# modification, are permitted provided that the following conditions# are met:# 1. Redistributions of source code must retain the above copyright#    notice, this list of conditions and the following disclaimer.# 2. Redistributions in binary form must reproduce the above copyright#    notice, this list of conditions and the following disclaimer in the#    documentation and/or other materials provided with the distribution.## THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR# PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY# OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.## Create a Windows installer package for wxPython wxWebKit binariesimport sys, os, stringimport commandsimport globfrom subprocess import *# Find InnoSetup executabledef getInnoSetupPath():    name = "ISCC.exe"    retval = ""    dirs = os.environ["PATH"].split(":")    # Add the default file path    dirs.append("C:\\Program Files\\Inno Setup 5")                        if os.environ.has_key("INNO5"):        retval = os.environ["INNO5"]        if retval == "":        for dir in dirs:            filepath = os.path.join(dir, name)            if os.path.isfile(filepath):                retval = filepath                return retval    def getWebKitOutputDir():    retval = ""    if os.environ.has_key("WEBKITOUTPUTDIR"):        retval = os.environ["WEBKITOUTPUTDIR"]            if retval == "":        retval = os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "..", "..", "WebKitBuild"))            return os.path.join(retval, "Release")def getRevisionString():    pipe = Popen("svnversion", shell=True, stdout=PIPE).stdout    svnrevision = pipe.read().strip()    print "r" + svnrevision    svnrevision = string.split(svnrevision, ":")[0]    svnrevision = svnrevision.replace("M", "")    svnrevision = "r" + svnrevision        return svnrevisionif __name__ == "__main__":    innoSetup = getInnoSetupPath()    buildDir = getWebKitOutputDir()    os.chdir(sys.path[0])    svnrevision = getRevisionString()    if not os.path.exists(innoSetup):        print "ERROR: Cannot find InnoSetup."        #sys.exit(1)            if not os.path.exists(buildDir):        print "ERROR: Build dir %s doesn't exist." % buildDir        sys.exit(1)    fileList = """CopyMode: alwaysoverwrite; Source: *.pyd;        DestDir: "{app}"CopyMode: alwaysoverwrite; Source: *.py;        DestDir: "{app}""""        dlls = glob.glob(os.path.join(buildDir, "*.dll"))    for dll in dlls:        if dll.find("wxbase") == -1 and dll.find("wxmsw") == -1:            fileList += """CopyMode: alwaysoverwrite; Source: %s;        DestDir: "{app}" \n""" % dll    installerTemplate = open("wxWebKitInstaller.iss.in", "r").read()    installerTemplate = installerTemplate.replace("<<VERSION>>", svnrevision)    installerTemplate = installerTemplate.replace("<<ROOTDIR>>", buildDir )    installerTemplate = installerTemplate.replace("<<PYTHONVER>>", "2.5" )    installerTemplate = installerTemplate.replace("<<FILES>>", fileList )    outputFile = open("wxWebKitInstaller.iss", "w")    outputFile.write(installerTemplate)    outputFile.close()    success = os.system('"%s" wxWebKitInstaller.iss' % innoSetup)    sys.exit(success)

⌨️ 快捷键说明

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