+# -*- coding: utf-8 -*-
# This will create a dist directory containing the executable file, all the data
# directories. All Libraries will be bundled in executable file.
#
except ImportError, message:
raise SystemExit, "Unable to load module. %s" % message
+
+origIsSystemDLL = py2exe.build_exe.isSystemDLL
+def isSystemDLL(pathname):
+ if os.path.basename(pathname).lower() in ["sdl_ttf.dll"]:
+ return 0
+ return origIsSystemDLL(pathname)
+py2exe.build_exe.isSystemDLL = isSystemDLL
+
+
class pygame2exe(py2exe.build_exe.py2exe): #This hack make sure that pygame default font is copied: no need to modify code for specifying default font
def copy_extensions(self, extensions):
#Get pygame default font
class BuildExe:
def __init__(self):
#Name of starting .py
- self.script = "MyApps.py"
+ self.script = "src/minwii/start_win.py"
#Name of program
- self.project_name = "MyApps"
+ self.project_name = "MINWii"
#Project url
self.project_url = "about:none"
if os.path.isdir(self.dist_dir): #Erase previous destination dir
shutil.rmtree(self.dist_dir)
+ if os.path.isdir('build'): #Clean up build dir
+ shutil.rmtree('build')
+
+
#Use the default pygame icon, if none given
if self.icon_file == None:
path = os.path.split(pygame.__file__)[0]
else:
extra_datas.append(('.', [data]))
+
setup(
cmdclass = {'py2exe': pygame2exe},
version = self.project_version,
'icon_resources': [(0, self.icon_file)],
'copyright': self.copyright
}],
- options = {'py2exe': {'optimize': 2, 'bundle_files': 1, 'compressed': True, \
- 'excludes': self.exclude_modules, 'packages': self.extra_modules, \
- 'dll_excludes': self.exclude_dll} },
+ options = {'py2exe': {#'optimize': 2,
+ 'bundle_files': 1,
+ #'compressed': True,
+ 'excludes': self.exclude_modules,
+ 'packages': self.extra_modules,
+ 'dll_excludes': self.exclude_dll}
+ },
zipfile = self.zipfile_name,
data_files = extra_datas,
dist_dir = self.dist_dir
)
- if os.path.isdir('build'): #Clean up build dir
- shutil.rmtree('build')
+ #if os.path.isdir('build'): #Clean up build dir
+ # shutil.rmtree('build')
if __name__ == '__main__':
if operator.lt(len(sys.argv), 2):
sys.argv.append('py2exe')
BuildExe().run() #Run generation
- raw_input("Press any key to continue") #Pause to let user see that things ends
+ #raw_input("Press any key to continue") #Pause to let user see that things ends