2 # -*- coding: iso-8859-1 -*-
4 ################################################################################
6 # 2008 June 27th by Marcus 'EgS' Eggenberger <egs@quassel-irc.org> #
8 # The author disclaims copyright to this source code. #
9 # This Python Script is in the PUBLIC DOMAIN. #
11 ################################################################################
13 # ==============================
15 # ==============================
19 # ==============================
21 # ==============================
25 SOURCE_DIR = sys.argv[1]
28 BUNDLE_NAME= "Quassel Client"
29 EXE_NAME = "quasselclient"
31 BUNDLE_NAME = sys.argv[2]
32 EXE_NAME = sys.argv[3]
33 CONTENTS_DIR = BUNDLE_NAME + ".app/Contents/"
35 BUNDLE_VERSION = "0.3.0"
36 ICON_FILE = "pics/quassel.icns"
40 os.makedirs(CONTENTS_DIR + "MacOS")
41 os.makedirs(CONTENTS_DIR + "Resources")
45 def copyFiles(exeFile, iconFile):
46 os.system("cp %s %sMacOs/%s" % (exeFile, CONTENTS_DIR.replace(' ', '\ '), BUNDLE_NAME.replace(' ', '\ ')))
47 os.system("cp %s/%s %s/Resources" % (SOURCE_DIR, iconFile, CONTENTS_DIR.replace(' ', '\ ')))
49 def createPlist(bundleName, iconFile, bundleVersion):
50 templateFile = file(SOURCE_DIR + "/scripts/build/Info.plist", 'r')
51 template = templateFile.read()
55 plistFile = file(CONTENTS_DIR + "Info.plist", 'w')
56 plistFile.write(template % {"BUNDLE_NAME" : bundleName,
57 "ICON_FILE" : iconFile[iconFile.rfind("/")+1:],
58 "BUNDLE_VERSION" : bundleVersion})
61 if __name__ == "__main__":
63 createPlist(BUNDLE_NAME, ICON_FILE, BUNDLE_VERSION)
64 copyFiles(EXE_NAME, ICON_FILE)