diff options
Diffstat (limited to 'BuildTools/SCons')
-rw-r--r-- | BuildTools/SCons/Tools/AppBundle.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/BuildTools/SCons/Tools/AppBundle.py b/BuildTools/SCons/Tools/AppBundle.py index 5f19898..6b7fc8b 100644 --- a/BuildTools/SCons/Tools/AppBundle.py +++ b/BuildTools/SCons/Tools/AppBundle.py @@ -1,53 +1,54 @@ import SCons.Util, os.path +from datetime import date def generate(env) : def createAppBundle(env, bundle, version = "1.0", resources = [], frameworks = [], info = {}, handlesXMPPURIs = False, sparklePublicDSAKey = None) : bundleDir = bundle + ".app" bundleContentsDir = bundleDir + "/Contents" resourcesDir = bundleContentsDir + "/Resources" frameworksDir = bundleContentsDir + "/Frameworks" env.Install(bundleContentsDir + "/MacOS", bundle) env.WriteVal(bundleContentsDir + "/PkgInfo", env.Value("APPL\77\77\77\77")) infoDict = { "CFBundleDevelopmentRegion" : "English", "CFBundleExecutable" : bundle, "CFBundleIdentifier" : "im.swift." + bundle, "CFBundleInfoDictionaryVersion" : "6.0", "CFBundleName" : bundle, "CFBundlePackageType" : "APPL", "CFBundleSignature": "\77\77\77\77", "CFBundleVersion" : version, "CFBundleIconFile" : bundle, "NSPrincipalClass" : "NSApplication", - "NSHumanReadableCopyright" : "(c) 2010 Swift Development Team.\nAll Rights Reserved." + "NSHumanReadableCopyright" : "(c) 2010-%d Isode Ltd.\nAll Rights Reserved." % date.today().year } infoDict.update(info) plist = """<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> """ for key, value in infoDict.items() : plist += "<key>" + key + "</key>\n" plist += "<string>" + value.encode("utf-8") + "</string>\n" if handlesXMPPURIs : plist += """<key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLName</key> <string>XMPP URL</string> <key>CFBundleURLSchemes</key> <array> <string>xmpp</string> </array> </dict> </array>\n""" if sparklePublicDSAKey : plist += "<key>SUPublicDSAKeyFile</key>" plist += "<string>" + sparklePublicDSAKey.name.encode("utf-8") + "</string>" env.Install(resourcesDir, sparklePublicDSAKey) plist += """</dict> </plist> |